home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / oper_sys / emerald / emrldsys.lha / Language / ExecTests / trecord.m < prev    next >
Encoding:
Text File  |  1990-08-31  |  899 b   |  33 lines

  1. % I should test the record syntax.
  2. import runtest from "RunTest"
  3.  
  4. const rec == record rec
  5.   var i : Integer
  6.   var c : Character
  7.   var r : instanceat
  8. end rec
  9.  
  10. const trecord == object trecord
  11.   const myTest == runtest.create[stdin, stdout, "trecord"]
  12.   process
  13.     var r, r2 : rec
  14.     r <- rec.create[5, 'a', nil]
  15.     myTest.check[r$I = 5, "r$I = 5"]
  16.     myTest.check[r$c = 'a', "r$c = 'a'"]
  17.     myTest.check[r$r == nil, "r$r == nil"]
  18.     r$i := 35
  19.     r$c := '~'
  20.     r2 <- rec.create[100, 'c', nil]
  21.     r2 <- rec.create[99, 'b', r2]
  22.     r$r := r2
  23.     myTest.check[r$I = 35, "r$I = 35"]
  24.     myTest.check[r$c = '~', "r$c = '~'"]
  25.     myTest.check[r$r !== nil, "r$r !== nil"]
  26.     myTest.check[r$r$i = 99, "r$r$i = 99"]
  27.     myTest.check[r$r$c = 'b', "r$r$c = 'b'"]
  28.     myTest.check[r$r$r$i = 100, "r$r$r$i = 100"]
  29.     myTest.check[r$r$r$c = 'c', "r$r$r$c = 'c'"]
  30.     myTest.done
  31.   end process
  32. end trecord
  33.